iT邦幫忙

DAY 19
1

從零開始開發Web應用程式系列 第 19

Web應用程式開發-ADO.NET

  • 分享至 

  • xImage
  •  

UI開發的部分 包含HTML、CSS、JAVA SCRIPT和設計模式都已有了基礎後
再來就是以ASP.NET來開發網站 所需要瞭解的 包含許多的伺服器控制項 HTML控制項 頁面的生命週期...這些都可在MSDN網站上查到詳細的說明

此次要說的是資料存取的部分,.NET的對資料庫的存取方式有相當的多方式,包含ADO.NET ,Strond type Data Adapter,Linq to SQL,Entity Framework...

另外許多控制項和資料庫有關的如SqlDataSource,這個東西是可以當成練習或應付畢業專題.但絕對不要拿到商業案子上使用 並不是因為它沒有深度 而是他只能做到簡單的資料存取 而且在設計階段幾乎就已把sql statement都做掉了,是非常方便,但是商業系統不可能那麼單純 還要考慮要延展性 擴充性 及和其他系統的介接..不可能一個SqlDataSource就可以包山包海的去完成一個網站或系統的設計

若是要推薦 則會推薦 Linq to SQL,他做到了以前需要自行撰寫大量底層的動作,實作OR Mapping比較容易也充分符合物件導向的做法,其實他還沒出來前,最常用也被推薦的方式是用Object DataSource的方式,一個Table對應一個Class ..欄位名稱及欄位形態 對應 屬性名稱及形態..但是Linq 把對應的部分都做掉了,所以那些底層對應的部分 不需在自己去寫了,

最後要回到主題ADO.NET 因為他是無論用上面任何方式去存取資料 都必須要會的技術,其實畫說回來 不會ADO.NET也不可能會弄得懂其他的資料存取方式,
下面說明基本的資料存取:
主要會用到System.Data.SqlClient
以對資料表的異動來說 會用SqlCommand來執行
若要取得一個資料集 可用SqlCommand取回 SqlDataReader,他是個順向讀取的資料讀取器
另外也可以使用SqlDataAdapter 取回DataDet物件,但若是資料筆數太大,還是要用分頁的方式取得資料,否則對網路流量會造成影響,對使用者端的資料顯示也會過慢,可透過StoredProcedure或SQL的RowNumber
若是資料量不多 則取回資料後再進行分頁也是可以,不過大部分的狀況下都會適當的已過濾條件就是where去過濾資料,並且以RowNumber去取得每頁要顯示的資料數,減少大量資料傳遞造成系統效能過慢.


上一篇
Web應用程式開發-建立XML
下一篇
Web應用程式開發-Linq
系列文
從零開始開發Web應用程式30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言